VIA
Type Definitions
Zone structure describes major memory divisions
Ptr leads directly to some memory (NewPtr)
Handle points to Master Ptr, which points to memory
Size a 32-bit value used only in Memory Manager calls
typedef short PageState;
typedef short StatusRegisterContents;
typedef pascal long (*GrowZoneProcPtr)(Size cbNeeded);
maxSize 0x800000 24-bit max addressable RAM on 68000
(hi-order byte has other meanings in in old
systems)
gestaltAddressingModeAttr 'addr' addressing mode attributes
gestalt32BitAddressing 0 booted in 32-bit mode
gestalt32BitSysZone 1 32-bit compatible sys. zone
gestalt32BitCapable 2 machine is 32-bit capable
gestaltOSAttr 'os ' O/S attributes
gestaltTempMemSupport 4 temp memory support present
gestaltRealTempMemory 5 temp memory handles are real
gestaltTempMemTracked 6 memory handles tracked
gestaltVMAttr 'vm ' virtual memory attributes
gestaltVMPresent 0 virtual memory present
default number of physical blocks in table
defaultPhysicalEntryCount 8
Page states
kPageInMemory 0 page is in RAM
kPageOnDisk 1 page is on disk
kNotPaged 2 address is not paged
Do not use low memory global variables that are not documented.
No undocumented location below the system heap is guaranteed to be available
for use in future systems.
Some of the following low memory globals may be found in the THINK C file
"LoMem.h".
Variables
Name Address Size Description
0x0AEC 4 handle to Finder information
0xB2A 4 handle to global width table
ABusVars 0x02D8 4 Pointer to AppleTalk variables
ApFontID 0x0984 2 font number of application font
ApplLimit 0x0130 4 heap limit of current application
ApplZone 0x02AA 4 application heap Zone address
AppPacks 0x0AB8 4
AppParmHandle
AtMenuBottom 0x0A0C 2 flag for menu scrolling
AuxCtlHead 0x0CD4 4
AuxWinHead 0x0CD0 4 auxiliary window list header
BootDrive 0x0210 2 working directory reference number for system
startup volume
BufPtr 0x010C 4 ending address of jump table
BufTgDate 0x0304 4 File tags buffer: date and time of last modification
BufTgFBkNum 0x0302 2 File tags buffer: logical block number
BufTgFFlg 0x0300 2 File tags buffer: flags (bit 1 = 1 if resource fork)
BufTgFNum 0x02FC 4 File tags buffer: file number
CaretTime 0x02F4 4 caret-blink interval in ticks
CPUFlag 0x012F 1 microprocessor in use
CrsrThresh 0x08EC 2 mouse scaling threshold
CrsrPin 0x0834 4
CurActivate 0x0A64 4 pointer to window to receive activate event
CurApName 0x0910 32 name of current application (length prefixed string)
CurApRefNum 0x0900 2 reference number of current application's resource
file
CurDeactive 0xA68 4 pointer to window to receive deactivate event
CurDirStore 0x398 4 directory ID of directory last opened
CurJTOffset 0x934 2 offset to jump table from location pointed to by A5
CurMap 0xA5A 2 reference number of current resource file
CurPageOption 0x936 2 sound/screen buffer configuration passed to Chain or
Launch
CurPitch 0x0280 2 Value of count in square-wave synthesizer buffer
CurrentA5 0x0904 4 boundary between application globals and application
parameters
CurStackBase 0x0908 4 start of application global vars (also stack base)
DAStrings 0x0AA0 16 handles to ParamText strings
DefltStack 0x0322 4 default stack space allocation.
DefVCBPtr 0x0352 4 pointer to default volume control block
DeskHook 0x0A6C 4 address of procedure for painting desktop or
responding tolicks on desktop
DeskPattern 0x0A3C 8 pattern with which desktop is painted
DoubleTime 0x02F0 4 double-click interval in ticks
DragHook 0x09F6 4 address of procedure to execute during TrackGoAway,
DragWindow, GrowWindow, DragGrayRgn,
DragPattern 0x0A34 8 pattern of dragged region's outline
DrvQHdr 0x0308 10 drive queue header
DSErrCode 0x0AF0 2 current system error ID
EjectNotify 0x0338 4
EventQueue 0x014A 10 event queue header
ExtStsDT 0x02BE 16 external/status interrupt vector table
FCBSPtr 0x034E 4 pointer to file- control-block buffer
FinderName 0x02E0 16 name of the Finder (length prefixed string)
FmtDefaults 0x039E 4
FractEnable 0x0BF4 1
FScaleDisable 0x0A63 1 nonzero to disable font scaling
FSFCBLen 0x03F6 2
FSQHdr 0x0360 10 file I/O queue header
GhostWindow 0x0A84 4 pointer to window never to be considered frontmost
GrayRgn 0x09EE 4 size and shape of current desktop
GZRootHnd 0x0328 4 relocatable block marked as NO MOVE (SetGrowZone)
HeapEnd 0x0114 4 application heap Zone ending address
HiliteMode 0x0938 1 set if highlight color is on
HiliteRGB 0x0DA0 6 default hilight color for the system
HWCfgFlags 0x0B22 2
IAZNotify 0x033C 4 ProcPtr gets called during InitApplZone
IWM 0x01E0 4
JFetch 0x08F4 4 Jump vector for Fetch function
JGNEFilter 0x029A 4
JIODone 0x08FC 4 Jump vector for IODone function
JStash 0x08F8 4 Jump vector for Stash function
JVBLTask 0x0D28 4 Jump vector for DoVBLTask routine
Key1Trans 0x029E 4
Key2Trans 0x02A2 4
KeyRepThresh 0x0190 2 auto-key rate
KeyThresh 0x018E 2 auto-key threshold
LastFOND 0x0BC2 4 handle to last family record used
Lo3Bytes 0x031A 4 contains the value 0x00FFFFFF
Lvl1DT 0x0192 32 level-1 secondary interrupt vector table
Lvl2DT 0x01B2 32 level-2 secondary interrupt vector table
MainDevice 0x08A4 4 handle to the current main device
MBarEnable 0x0A20 2 unique menu ID for active desk accessory, when menu
bar belongs to the accessory
MBarHeight 0x0BAA 2 height of menu bar
MBarHook 0x0A2C 4 address of routine called by MenuSelect before menu
is drawn
MemErr 0x0220 2 most recent memory-related error
MemTop 0x0108 4 highest address of available RAM
MenuCInfo 0x0D50 4 header for menu color information table
MenuDisable 0x0B54 4 menu ID and item for selected disabled item
MenuFlash 0x0A24 2 count for duration of menu item blinking
MenuHook 0x0A30 4 address of routine called during MenuSelect
MenuList 0x0A1C 4 handle to current menu list
MinStack 0x031E 4 minimum stack space allocation.
MinusOne 0x0A06 4 0xFFFFFFFF
MMU32Bit 0x0CB2 1 current address mode
OneOne 0x0A02 4 0x00010001
PaintWhite 0x09DC 2 flag for whether to paint window white before update
event
PortBUse 0x0291 1 Current availability of serial port B
PrintErr 0x0944 2 result code from last Print Manager routine
QDExist 0x08F3 1
RAMBase 0x02B2 4 trap dispatch table's base address for rtns in RAM
ResErr 0x0A60 2 current value of ResError
ResErrProc 0x0AF2 4 address of resource error procedure
ResLoad 0x0A5E 1 current SetResLoad state
ResumeProc 0x0A8C 4 address of resume procedure
RndSeed 0x0156 4 random number seed
ROM85 0x028E 2
ROMBase 0x02AE 4 base address of start of ROM
RomMapInsert 0x0B9E 2 Flag for whether to insert map to the ROM resources
SaveUpdate 0x09DA 2 flag for whether to generate update events
SaveVisRgn 0x09F2 4 handle to saved visRgn
SCCRd 0x01D8 4 SCC read base address
SCCWr 0x01DC 4 SCC write base address
ScrapCount 0x0968 2 Count changed by ZeroScrap
ScrapHandle 0x0964 4 Handle to desk scrap in memory
ScrapName 0x096C 4 Pointer to scrap file name (preceded by length byte)
ScrapSize 0x0960 4 Size in bytes of desk scrap
ScrapState 0x096A 2 Tells where desk scrap is
Scratch20 0x1E4 20 20-byte scratch area
Scratch8 0x9FA, 8 8-byte scratch area
ScrDmpEnb 0x02F8 1 0 if GetNextEvent shouldn't process
Command-Shift-number combinations
ScreenRow 0x0106 2
ScrHRes 0x0104 2 pixels per inch horizontally
ScrnBase 0x0824 4 address of main screen buffer.
ScrVRes 0x0102 2 pixels per inch vertically
SdVolume 0x0260 1 current speaker volume (low-order three bits only)
SEvtEnb 0x015C 1 0 if SystemEvent should return FALSE
SFSaveDisk 0x0214 2 negative of volume reference number used by Standard
File Package
SoundBase 0x0266 4 Pointer to free-form synthesizer buffer
SoundLevel 0x027F 1 Amplitude in 740-byte buffer
SoundPtr 0x0262 4 Pointer to 4-tone record
SysEvtMask 0x0144 2 system event mask
SysMap 0x0A58 2 reference number of system resource file
SysMapHndl 0x0A54 4 handle to map of system resource file
SysParam 0x01F8 20 low-memory copy of parameter RAM
SysResName 0x0AD8 20 name of system resource file (length prefixed string)
SysVersion 0x015A 2
SysZone 0x02A6 4 system heap Zone address
TEScrpHandle 0xAB4 4 handle to TextEdit scrap
TEScrpLength 0xAB0 2 size in bytes of TextEdit scrap
TheGDevice 0xCC8 4 handle to current active device
TheMenu 0xA26 2 menu ID of currently highlighted menu
TheZone 0x0118 4 address of current heap Zone
Ticks 0x016A 4 current number of ticks since system startup
Time 0x020C 4 seconds since midnight, January 1, 1904
TimeLM 0x020C 4
TopMapHndl 0x0A50 4 handle to resource map of most recently opened
resource file
TopMenuItem 0x0A0A 2 pixel value of top of scrollable menu
UnitNtryCnt 0x01D2 2
UTableBase 0x011C 4 base address of unit table
VBLQueue 0x0160 10 vertical retrace queue header
VCBQHdr 0x0356 10 volume- control- block-queue header
VIA 0x01D4 4 VIA base address
WidthTabHandle
WindowList 0x09D6 14 pointer to first window in window list; 0 if using
events but not windows
WMgrCPort 0x0D2C 4 pointer to Window Manager port
WordRedraw 0x0BA5 1 Value that indicates how much of a line must be
redrawn after a character is entered
WWExist 0x08F2 1